Algoritmo de Dijkstra

Algoritmo de Dijkstra

Ejecución del algoritmo de Dijkstra
Tipo Algoritmo de búsqueda
Problema que resuelve Problema del camino más corto
Estructura de datos Grafo
Creador Edsger Dijkstra
Fecha 1959
Clase de complejidad P
Tiempo de ejecución
Peor caso


El algoritmo de Dijkstra, también llamado algoritmo de caminos mínimos, es un algoritmo para la determinación del camino más corto, dado un vértice origen, hacia el resto de los vértices en un grafo que tiene pesos en cada arista. Su nombre alude a Edsger Dijkstra, científico de la computación de los Países Bajos que lo concibió en 1956 y lo publicó por primera vez en 1959.[1][2]

La idea subyacente en este algoritmo consiste en ir explorando todos los caminos más cortos que parten del vértice origen y que llevan a todos los demás vértices; cuando se obtiene el camino más corto desde el vértice origen hasta el resto de los vértices que componen el grafo, el algoritmo se detiene. Se trata de una especialización de la búsqueda de costo uniforme y, como tal, no funciona en grafos con aristas de coste negativo (al elegir siempre el nodo con distancia menor, pueden quedar excluidos de la búsqueda nodos que en próximas iteraciones bajarían el costo general del camino al pasar por una arista con costo negativo).[3]

  1. Frana, Phil (August 2010). «An Interview with Edsger W. Dijkstra». Communications of the ACM 53 (8): 41-47. doi:10.1145/1787234.1787249. 
  2. Dijkstra, E. W. (1959). «A note on two problems in connexion with graphs». Numerische Mathematik 1: 269-271. S2CID 123284777. doi:10.1007/BF01386390. 
  3. Knuth, D.E. (1977). «A Generalization of Dijkstra's Algorithm». Information Processing Letters 6 (1): 1-5. doi:10.1016/0020-0190(77)90002-3. 

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Tubidy